package com.handle.system.api.constants;

import com.handle.common.core.exception.assertion.UserAcctExceptionAssert;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author zhangqing
 * @version V1.0
 * @description 响应code枚举
 * @date 16/3/2021 10:45 PM
 */
@Getter
@AllArgsConstructor
public enum ResponseEnum implements UserAcctExceptionAssert {

    /**
     * http默认响应状态码
     */
    UNAUTHORIZED(401, "Unauthorized"),

    /**
     * 响应code枚举
     * 1. 2000-2999 用户响应异常
     * 依次类推到别的异常
     */
    USER_BLOCK(2001, "用户已被禁用(锁定)"),
    USER_DELETE(2002, "用户已被删除"),
    USER_NOT_EXISTS(2003, "用户不存在"),
    USER_PASSWORD_NOT_MATCH(2004, "用户账号或密码不匹配"),
    TENANT_DELETE(2005, "所在机构已被删除"),
    TENANT_BLOCK(2006, "所在机构已被禁用(锁定)"),
    DEPT_IS_NULL_TENANT(2007, "所属机构部门信息为空"),
    ROLE_IS_NULL(2008, "用户未绑定角色"),
    ADMIN_NOT_DEL(2009, "不允许删除平台管理员"),
    ADMIN_DO_NOT_MODIFY(2010, "管理员用户不允许修改"),
    USER_PHONE_NOT_UNIQUE(2011, "用户手机号已存在"),
    USER_EMAIL_NOT_UNIQUE(2012, "用户邮箱已存在"),
    USER_LOGIN_NAME_EXISTS(2013, "登录名已存在"),
    ROLE_CODE_EXISTS(2014, "角色编码已存在"),
    ROLE_NOT_EXISTS(2015, "角色不存在"),
    ADMIN_ROLE_NOT_DEL(2016,"admin角色不允许被删除"),
    MENU_NOT_EXISTS(2017,"菜单不存在或已被删除");

    private final int code;

    private final String message;
}
